package com.smarthome.common.tools;

import java.math.BigDecimal;


/**
 * <B>Description</B> 金钱转换 <br />
 * <B>Copyright</B> Copyright (c) 2015 www.smarthome.com All rights reserved. <br />
 * 本软件源代码版权归xxxx公司,未经许可不得任意复制与传播.<br />
 * <B>Company</B> xxxx公司
 * 
 * @createTime 2015年8月6日 下午5:32:05
 * @author KongXiangyu
 */
public class MoneyUtils {

    /**
     * 分转换成元
     * 
     * @param fen
     * @return
     * @createTime 2015年8月6日 下午5:32:07
     * @author KongXiangyu
     */
    public static BigDecimal fenToYuan(Long fen) {
        if (null == fen)
            return null;

        return new BigDecimal(fen).divide(new BigDecimal(100));
    }


    /**
     * display on the web page.
     * 
     * @param fen
     * @return
     */
    public static String format(Long fen) {
        BigDecimal yuan = fenToYuan(fen);
        return format(yuan);
    }
    
    public static String formatFen(Long fen) {
        BigDecimal yuan = fenToYuan(fen);
        return formatYuan(yuan);
    }
    
    public static String formatYuan(BigDecimal yuan) {
        if(yuan == null) {
            return "-";
        }
        return (yuan.doubleValue() < 0 ? "-￥" : "+￥") + yuan.abs().toString();
    }
    
    /**
     * 
     * @param yuan
     * @return
     * @author Gavin
     */
    public static String format(BigDecimal yuan) {
        if(yuan == null) {
            return "-";
        }
        return (yuan.doubleValue() < 0 ? "-￥" : "￥") + yuan.abs().toString();
    }


    /**
     * 元转换成分
     * 
     * @param yuan
     * @return
     * @createTime 2015年8月6日 下午5:32:54
     * @author KongXiangyu
     */
    public static Long yuanToFen(BigDecimal yuan) {
        if (null == yuan)
            return null;
        return yuan.multiply(new BigDecimal(100)).longValue();
    }


    public static void main(String[] args) {
        System.out.println(fenToYuan(null));
    }
}
